package com.smart.tool.retry.core;

/**
 * @Author gao.gwq
 * @Version BlockStrategy.java, v 0.1 2023年09月18日 10:50 gao.gwq
 * @Description: TODO
 */
public interface BlockStrategy {
    /**
     * Attempt to block for the designated amount of time. Implementations
     * that don't block or otherwise delay the processing from within this
     * method for the given sleep duration can significantly modify the behavior
     * of any configured {@link com.github.rholder.retry.WaitStrategy}. Caution
     * is advised when generating your own implementations.
     *
     * @param sleepTime the computed sleep duration in milliseconds
     * @throws InterruptedException
     */
    void block(long sleepTime) throws InterruptedException;
}
